A portion of the disclosure of this patent document contains material which is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure, as it appears in the Patent and Trademark Office patent file or records, but otherwise reserves all copyrights whatsoever.
The invention relates generally to an electronic computer aided design (ECAD) system and more particularly to a system and method for plotting integrated circuit design layouts from multiple computer workstations to one or more hardcopy plotting devices.
In a typical ECAD system, a host computer, commonly called a file server, is connected to a network of other computers each of which is served by a common plotting device usually connected to the file server. These computers, commonly called client workstations, manage the collection of data entered by the user and, among other things, drive the shared plotting device which produces graphical hardcopy output of designs captured by the client workstations.
The most common approach to producing hardcopy output through this combination of client workstation(s), file server and plotting device has been to employ plotting software incorporated into the ECAD system for the process of converting the data, commonly called rasterization; transferring the rasterized output to a spooling area in computer memory ordinarily in the file server; and finally printing the plot on the output device. Typically, the rasterization process is run on each client workstation in a network. The process of rasterizing the data can be very time-consuming. The user must await completion of the rasterization before the client workstation can continue to be utilized for additional design capture or other tasks.
Many ECAD systems employ a multi-tasking operating system such as UNIX.RTM., which allows compute-intensive processes, such as rasterization, to be run simultaneously with other processes. This is commonly referred to as background processing. Background processing at least allows the user to continue other computer tasks. Yet, despite this ability, rasterization can still require so much computer resources that response time for the user performing other computer-based tasks is unacceptable.
A typical example can be illustrated by considering the popular integrated circuit ECAD system from Cadence Inc. called the Cadence Design System. This system shown in block diagram form in FIG. 1 and in a data flow diagram in FIG. 2, utilizes the UNIX.RTM. operating system for multiple processing, and employs a network of client workstations, a file server and one or more plotting devices. Each client workstation performs the rasterization process for each hardcopy plot request. Once completed, the rasterized file is sent either to a locally connected plotting device, or across the network to a file server and then to a plotting device for output.
Response time in this environment is nearly unacceptable because the rasterization process is run on the client workstation despite the fact that the UNIX.RTM. operating system provides for running the rasterization process simultaneous to other tasks, such as capturing additional design work in the integrated circuit layout editor. As a result, the client workstation user cannot make productive use of the workstation during rasterization processing. This results in increased turn-around time for circuit design layouts and higher costs.
Accordingly, a need remains for an improved method and system for rasterizing, spooling and plotting graphical hardcopy of integrated circuit designs captured on client workstations which would allow the user to continue other tasks while the time and resource consuming processes of rasterization and hardcopy plotting run uninterrupted.